Scheduling is done in multiple stages in a hierarchical scheduler. Leaf-level schedulers in a hierarchical scheduler might include some combination of Strict Priority (SP) and Weighted Round Robin/Deficit Round Robin (WRR/DRR) schedulers. Higher levels of a scheduler might include a combination of optional shapers followed by SP, Time Division Multiplexing (TDM) calendar, or DRR scheduling. None of these algorithms used in a second or higher level of a scheduler hierarchy factors in dynamically changing priority of the traffic scheduled by lower level members.
Traditional DRR scheduling, for example, employs a single Active-state list that is not priority-aware, and also does not provide for shaping. Although Modified DRR or (MDRR) scheduling might use one or more SP queues and a DRR at the lowest priority level, the combination is scheduled in a fixed priority order. The SP queues and the DRR scheduler have fixed priorities relative to each other, and only that fixed priority order is applied in subsequent scheduling among the queues and the DRR scheduler.